<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>QSculpt: IIterator&lt; T &gt; Class Template Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">QSculpt
   &#160;<span id="projectnumber">0.0.1a</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">IIterator&lt; T &gt; Class Template Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="IIterator" -->
<p><code>#include &lt;<a class="el" href="_i_iterator_8h_source.html">IIterator.h</a>&gt;</code></p>

<p>Inherited by data::Vector&lt; Type &gt;::TypeIterator&lt; T &gt;.</p>

<p><a href="class_i_iterator-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4dfa58f7f13622e94b39172d9efe9482"></a><!-- doxytag: member="IIterator::SharedPtr" ref="a4dfa58f7f13622e94b39172d9efe9482" args="" -->
typedef T::SharedPtr&#160;</td><td class="memItemRight" valign="bottom"><b>SharedPtr</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9d2a4a73b3f823cc5b78ca7b97670da"></a><!-- doxytag: member="IIterator::WeakPtr" ref="af9d2a4a73b3f823cc5b78ca7b97670da" args="" -->
typedef T::WeakPtr&#160;</td><td class="memItemRight" valign="bottom"><b>WeakPtr</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac625f4ac951ab47bbd462f129cfc11ec"></a><!-- doxytag: member="IIterator::Ptr" ref="ac625f4ac951ab47bbd462f129cfc11ec" args="" -->
typedef T::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#a6fdc9a8286cb3fe2d6c9a0edba2fd478">clone</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#a3110d893d8f9b57c221d76c058675e76">hasNext</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#aeaf6228da3ecdbe4609f78dea914b49d">hasPrevious</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual SharedPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#a8b2d9aad7676fe147079b76700551bd3">next</a> ()=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const SharedPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#a374a31dfc6dbb808a45c5fd11c7d3a71">next</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual SharedPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#a17d30f4b06b02f8c5ec1553820700fc5">peekNext</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const SharedPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#ae9589ba8479b68aae732254f537ee744">peekNext</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual SharedPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#a6eb4b8396dc95029d695abc711896ba3">previous</a> ()=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const SharedPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#a59bc93da920e39bc42caa0804f06d121">previous</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_iterator.html#a6996f0cd1b32bb80e36b130b7b242b8a">seek</a> (int pos, IteratorOrigin origin) const =0</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T&gt;<br/>
class IIterator&lt; T &gt;</h3>

<p>Interface for iterator used in QSculpt </p>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a6fdc9a8286cb3fe2d6c9a0edba2fd478"></a><!-- doxytag: member="IIterator::clone" ref="a6fdc9a8286cb3fe2d6c9a0edba2fd478" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_i_iterator.html">IIterator</a>&lt;T&gt;* <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::clone </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Function to copy iterators of the same type. </p>

<p>Implemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#a61fef02428820dc05f8a7d886786cf61">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#a0032f03b7fa237f8b1220ebabbfe5e4c">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a6f0f0731500d239159911978cf08a16f">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#ac9050ece41274b51c06fd293808aab0d">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#aafa16bb3312c1e917d8fc6648e882267">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#aa0b4deee813d823a059b68e93d02da2b">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a8f977b9a4793de0771b537ef3789cdc8">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a146925164061b7cd5493e76e1c2f6481">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#ac3ed0245fc97d1e12725129f02134b9f">Mesh::VertexIterator</a>, <a class="el" href="class_scene_iterator.html#a121b96ced51a69f6d3c70aa98e42d956">SceneIterator</a>, <a class="el" href="class_edge_1_1_h_edge_iterator.html#aa1760fed1bd0048747f790f0cacf097a">Edge::HEdgeIterator</a>, <a class="el" href="class_scene_node_1_1_scene_node_iterator.html#aed6be97778935f81245f6ee9ad8fe9d1">SceneNode::SceneNodeIterator</a>, <a class="el" href="class_surface_iterator.html#a1fb7dfb702d81780bc88dd12c8d2c15a">SurfaceIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#a73f2f3593d742267006aae5e113f02e5">Vertex::VertexIterator</a>, <a class="el" href="class_face_1_1_vertex_iterator.html#a72659f0c1f98d0b3c2bad66098f95c7d">Face::VertexIterator</a>, and <a class="el" href="class_edge_1_1_vertex_iterator.html#aaaa7fb1b453b30831374a29254223c36">Edge::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="a3110d893d8f9b57c221d76c058675e76"></a><!-- doxytag: member="IIterator::hasNext" ref="a3110d893d8f9b57c221d76c058675e76" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::hasNext </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return true if the iterator has more elements (i.e. it is not at the end) </p>

<p>Implemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#a52077eb3674a77027481ce5cc5a97cf4">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#a3252b36e8447ec66a33c484403ce0bed">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a700639b3fa538b0e629f771635880da2">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#a558db47c1aaf082a77b4006d59cc8665">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#a8c3d754ea4cbd9ee3fc5224eff972851">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#a11a07a35a31e68ff02f5b7cb1422e858">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a79d80039d364ba2d3dca760f850c16ce">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a216dba93655e4eb8505b7fe842cf2790">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#ae504a779d51fc30854a19179899327d5">Mesh::VertexIterator</a>, <a class="el" href="class_scene_iterator.html#ab5ad32d3723b0b109365b277c16bdcd2">SceneIterator</a>, <a class="el" href="class_edge_1_1_h_edge_iterator.html#abda3047968c58ec314b2fecd163eabce">Edge::HEdgeIterator</a>, <a class="el" href="class_scene_node_1_1_scene_node_iterator.html#accd8b120ba13e552f953be648c543ea4">SceneNode::SceneNodeIterator</a>, <a class="el" href="class_surface_iterator.html#aecc8342ec1d9ef5b3938c0e47e6ea2a7">SurfaceIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#a36ef5acfa08f58aaad05913c269de008">Vertex::VertexIterator</a>, <a class="el" href="class_face_1_1_vertex_iterator.html#ad2d91fe3ceff9f148d79b2911701cdc9">Face::VertexIterator</a>, and <a class="el" href="class_edge_1_1_vertex_iterator.html#acf8ade7586cb818711533a4f0e93a0f2">Edge::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="aeaf6228da3ecdbe4609f78dea914b49d"></a><!-- doxytag: member="IIterator::hasPrevious" ref="aeaf6228da3ecdbe4609f78dea914b49d" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::hasPrevious </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns true if the iterator is not at the beginning of the iteration </p>

<p>Implemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#a899bd6e82012418be06c5ab6b9028d8c">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#aaca402d6aa704aeae0dfe449ff4150e6">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a5ea69764be35d18cb1b459f85f263f36">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#a710c80b061d25b009d5a16018a3a9539">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#ad1cfeb425f2444a610d993edad6dcc12">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#accc7a67bbcdf7cc58d7a6a42ec0960a3">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a368064e98b1b7491aa8174930cf6a9f8">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a2534a40d8b71cf7c9e38ed095eb7f539">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#a04c6a4e15a0a017d0dd2d2f67d656d1e">Mesh::VertexIterator</a>, <a class="el" href="class_scene_iterator.html#ae57cdd0d528a31cf607c29442f0e81f2">SceneIterator</a>, <a class="el" href="class_edge_1_1_h_edge_iterator.html#abf2c1c5deb69c94d1a603c75d0f1d7c0">Edge::HEdgeIterator</a>, <a class="el" href="class_scene_node_1_1_scene_node_iterator.html#a9006ea91c20926272d3564525c4b6785">SceneNode::SceneNodeIterator</a>, <a class="el" href="class_surface_iterator.html#af6609f6894866e080817ee9bb97f4c49">SurfaceIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#abbfd9483a932ee99f2645eaf7f25d8d5">Vertex::VertexIterator</a>, <a class="el" href="class_face_1_1_vertex_iterator.html#af8e18fd22663f802c6d2156f271edbf7">Face::VertexIterator</a>, and <a class="el" href="class_edge_1_1_vertex_iterator.html#a3a9e692a15bcb5d7ee3103c6fc5abd40">Edge::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="a8b2d9aad7676fe147079b76700551bd3"></a><!-- doxytag: member="IIterator::next" ref="a8b2d9aad7676fe147079b76700551bd3" args="()=0" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual SharedPtr <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::next </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns the next element and advance the iterator by one. </p>

<p>Implemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#adfa11ded87a61aa34da4ad4167424701">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#a255c31c8e02ea4dff761cf7d80e7fb02">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a5911d2181f30f2e3315208d056d395fa">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#a5f91eefb0079520e12c0ed8059b58aba">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#ac072b7053c6fa2ebeeba9b902e5b5445">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#a1f8db07e20a8a4764ac61ec0586165a0">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a4db3dc6b75e86f7eeced3f10e21723bf">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a465e0ee367236aeff22e78456fc59777">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#a8b7b5c24c3d38312d1b3374d7a6be305">Mesh::VertexIterator</a>, <a class="el" href="class_scene_iterator.html#a23d219bd6733f3e4ee46ab03c7777695">SceneIterator</a>, <a class="el" href="class_edge_1_1_h_edge_iterator.html#a20cbe652674c43d28548ce91c299dc5b">Edge::HEdgeIterator</a>, <a class="el" href="class_scene_node_1_1_scene_node_iterator.html#a86f64b81665c21587a66bb99cfde929f">SceneNode::SceneNodeIterator</a>, <a class="el" href="class_surface_iterator.html#afda64373ce9c6f307e4a063c2bb1dcfe">SurfaceIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#af2c535947393f918290801935b315a69">Vertex::VertexIterator</a>, <a class="el" href="class_face_1_1_vertex_iterator.html#adab1f92afdfaeddbd068ed039ccc7885">Face::VertexIterator</a>, and <a class="el" href="class_edge_1_1_vertex_iterator.html#a7c8f2795651540d33bc45c427d278027">Edge::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="a374a31dfc6dbb808a45c5fd11c7d3a71"></a><!-- doxytag: member="IIterator::next" ref="a374a31dfc6dbb808a45c5fd11c7d3a71" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual const SharedPtr <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::next </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns the next element and advance the iterator by one. </p>

<p>Implemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#afa9f0126aaf0ac005ffa2316bf9a3b8c">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#a1b0e8ff5de839bf9950ba2f9179162d4">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#abae3305496a9e75c4ef72b45eb0afeb2">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#a651f8372cb04de6f13bec9fcf4767eb5">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#ab0f7fe345d156338a08b76c25c5dced7">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#af63fd72735c8687106f6dad335f83629">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a8b84ae0c6d8206a23045e417ab0e636c">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a06774203bd87ac6d536c26a38cfc37ff">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#a1f9af4b4071b9e6dfd4ce72b60888c78">Mesh::VertexIterator</a>, <a class="el" href="class_scene_iterator.html#a471997682777adb9085f6eb31ee5ff20">SceneIterator</a>, <a class="el" href="class_edge_1_1_h_edge_iterator.html#a8332e4b689920031577e68a08840e038">Edge::HEdgeIterator</a>, <a class="el" href="class_scene_node_1_1_scene_node_iterator.html#a9460b3815bd080ddde144031d4d3bc63">SceneNode::SceneNodeIterator</a>, <a class="el" href="class_surface_iterator.html#a7ca44aeb8af72161b0ed3572e06b0e6d">SurfaceIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#a5cfc3294465a3be595ac795ccfdb618a">Vertex::VertexIterator</a>, <a class="el" href="class_face_1_1_vertex_iterator.html#a94560effbba0be3d9a1e833598d85a30">Face::VertexIterator</a>, and <a class="el" href="class_edge_1_1_vertex_iterator.html#a46f2a855c0d2db6c64a43eb4670c9464">Edge::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="a17d30f4b06b02f8c5ec1553820700fc5"></a><!-- doxytag: member="IIterator::peekNext" ref="a17d30f4b06b02f8c5ec1553820700fc5" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual SharedPtr <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::peekNext </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the next element without advancing to the iterator </p>

<p>Reimplemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#a0e46102a6906e0b22c70103b50264518">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#aedac86a3d5f280bc620754cdaad467d6">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a54d208ebc86490b5b2cd5be325f1e356">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#a7690074bfa9166a06eab4bf2b0e2251a">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#a455a87181f34e0dba6bdff76149b66b7">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#ae5a55eb639df62bf9eb8297cd5261834">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#aa3d195c572569d6f3534a884b7e58660">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a92fd8857c9e2acc0e1eb1190ac4d1ea8">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#a41286939c5b7b323e581748caf86fb56">Mesh::VertexIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#a2106956c42cc8245a99d019c486d3871">Vertex::VertexIterator</a>, and <a class="el" href="class_face_1_1_vertex_iterator.html#aca72d221403373596f5ad5450d135e03">Face::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="ae9589ba8479b68aae732254f537ee744"></a><!-- doxytag: member="IIterator::peekNext" ref="ae9589ba8479b68aae732254f537ee744" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual const SharedPtr <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::peekNext </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the next element without advancing to the iterator </p>

<p>Reimplemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#a0fb8569ee61c52756d56cdd9ebe5bac6">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#a69286e4565da4b382894b96bc0e0e708">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a7088184302d7bb30fb6dc4e9ceb71f4f">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#ae1485e6e61a3c772d7882ea9d79e9394">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#a36ab2a7b990f9e99eb8433ac3c30fa9f">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#ae483a63c8c138290c2af712f2ebfff94">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a67d68f57d21243c7621f1e177d9d3a7d">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a8f4a55ffe27435cac9dcfdd1ffed04ce">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#a4d24c9a6f5a0c49ce5b2cc1058f01551">Mesh::VertexIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#a50681d6d4f71baea1311220deae89de4">Vertex::VertexIterator</a>, and <a class="el" href="class_face_1_1_vertex_iterator.html#a206492f8c9128a80802a3c6ed3acb3d6">Face::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="a6eb4b8396dc95029d695abc711896ba3"></a><!-- doxytag: member="IIterator::previous" ref="a6eb4b8396dc95029d695abc711896ba3" args="()=0" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual SharedPtr <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::previous </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns the previous elements and move the iterator one position backwards. </p>

<p>Implemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#a3ba5f12a632d1e7b34fc0d8038766f55">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#af90bf3ccf82bd7c2a6c3835677183024">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a3ef98ca7907a44902ce3076d72bddf0d">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#a426d254c7315d9ae4264de7d13d62208">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#aa821705800349da3aa764f43caf0e74e">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#a380aa96764135fed982d77be5746fcae">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a2d91a708f5eaa19dde48c2f0f2dedb53">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a73439b4b085516b8b2e80bef0c54d728">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#ae921597557c2cd59ee29c8758fc73fe2">Mesh::VertexIterator</a>, <a class="el" href="class_scene_iterator.html#a2b3cdfc5649ec21da502d5059c39260d">SceneIterator</a>, <a class="el" href="class_edge_1_1_h_edge_iterator.html#a183c9ebf753a56d3e5378aeecdeb1848">Edge::HEdgeIterator</a>, <a class="el" href="class_scene_node_1_1_scene_node_iterator.html#a3fc0aaf4bcb335d309bfebf210436a5f">SceneNode::SceneNodeIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#a545d7678176a1f8adb2ad07da05a94b3">Vertex::VertexIterator</a>, <a class="el" href="class_surface_iterator.html#a56781e6834e5420e9d9abb5048296095">SurfaceIterator</a>, <a class="el" href="class_face_1_1_vertex_iterator.html#a1917463329eb6285c13e63cd610ffba6">Face::VertexIterator</a>, and <a class="el" href="class_edge_1_1_vertex_iterator.html#abd70f9727116a1a16393099c1b7af379">Edge::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="a59bc93da920e39bc42caa0804f06d121"></a><!-- doxytag: member="IIterator::previous" ref="a59bc93da920e39bc42caa0804f06d121" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual const SharedPtr <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::previous </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns the previous elements and move the iterator one position backwards. </p>

<p>Implemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#aba65354ee0cd681587896556fe2a353f">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#a2186a99253f52f423ca5b698f03efb4a">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a122c43328932e09c37ed240deac712bd">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#a7f0b86e5488851c3d4145a786f7eff1c">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#ae62716c5ca198031bb2b960c28be54f5">Vertex::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#a971ab16769405c3d5cdc0bf8f133cf1b">Subdivision::VertexIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a92e0ec473303daf94f9a02048afaf268">Face::EdgeIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a28bfdbf8a0912120633eb114dd1eabf6">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#ade3ebff1d0429f957f59bea2fc7c0b80">Mesh::VertexIterator</a>, <a class="el" href="class_scene_iterator.html#a9d2837cf91ebadc640cb6c20e35b643b">SceneIterator</a>, <a class="el" href="class_edge_1_1_h_edge_iterator.html#a2eaaa85158d2bf3e84b761115baf6d78">Edge::HEdgeIterator</a>, <a class="el" href="class_scene_node_1_1_scene_node_iterator.html#acecd0d541a2f7236decfc201541f321e">SceneNode::SceneNodeIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#af4f2c17cca3bd69fa2181e549ebd16cc">Vertex::VertexIterator</a>, <a class="el" href="class_surface_iterator.html#a6cf0ead1fa96301c5626f1059d3effc3">SurfaceIterator</a>, <a class="el" href="class_face_1_1_vertex_iterator.html#acc501c51e803639a99abbbe62b910e37">Face::VertexIterator</a>, and <a class="el" href="class_edge_1_1_vertex_iterator.html#a8c56d6d3b7c754314aa4a7d5a18b4507">Edge::VertexIterator</a>.</p>

</div>
</div>
<a class="anchor" id="a6996f0cd1b32bb80e36b130b7b242b8a"></a><!-- doxytag: member="IIterator::seek" ref="a6996f0cd1b32bb80e36b130b7b242b8a" args="(int pos, IteratorOrigin origin) const =0" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="class_i_iterator.html">IIterator</a>&lt; T &gt;::seek </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">IteratorOrigin&#160;</td>
          <td class="paramname"><em>origin</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set the current position to pos relative to origin.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pos</td><td>number of elements to jump relative to origin </td></tr>
    <tr><td class="paramname">origin</td><td>states the reference to jump. </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="class_mesh_1_1_edge_iterator.html#a2058b04a62cf1d5d571fb7d5b5b58a7b">Mesh::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_edge_iterator.html#a0c1e68198e0207aa4b1136f3458071b9">Subdivision::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_face_iterator.html#a50a6079bbeaa608879ba6591c758f83c">Subdivision::FaceIterator</a>, <a class="el" href="class_mesh_1_1_face_iterator.html#a5ad00486ba786cb08f980d62b464a05a">Mesh::FaceIterator</a>, <a class="el" href="class_vertex_1_1_edge_iterator.html#a6637bc0faa9d83b0de1cfcea92dd6723">Vertex::EdgeIterator</a>, <a class="el" href="class_face_1_1_edge_iterator.html#a3101826c93d0daeaff322d0a5df8454f">Face::EdgeIterator</a>, <a class="el" href="class_subdivision_1_1_vertex_iterator.html#aae2c0c7e319d2b54b7d26c9a09d3d586">Subdivision::VertexIterator</a>, <a class="el" href="class_vertex_1_1_face_iterator.html#a3438331727a22a5f087415a15f0db44b">Vertex::FaceIterator</a>, <a class="el" href="class_mesh_1_1_vertex_iterator.html#a4d8c989597c69754db49690a4dbb1b61">Mesh::VertexIterator</a>, <a class="el" href="class_scene_iterator.html#ae27d09a2003b6c894521482e4c296cde">SceneIterator</a>, <a class="el" href="class_edge_1_1_h_edge_iterator.html#a923a3286b58fa83c0ef74b34b2cdc2df">Edge::HEdgeIterator</a>, <a class="el" href="class_scene_node_1_1_scene_node_iterator.html#ae8c519c3da9a576ae3919c0821d3f00d">SceneNode::SceneNodeIterator</a>, <a class="el" href="class_face_1_1_vertex_iterator.html#aad8879bc97bda1bdda6f3eb4f918f273">Face::VertexIterator</a>, <a class="el" href="class_vertex_1_1_vertex_iterator.html#a5cc750bfc60d8afbc1e64aac1502ab61">Vertex::VertexIterator</a>, <a class="el" href="class_surface_iterator.html#af8de6b57aaacc212c2e37cc70d380f52">SurfaceIterator</a>, and <a class="el" href="class_edge_1_1_vertex_iterator.html#a6efce1151a712c67ba4a43769226c6dd">Edge::VertexIterator</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>engine/include/<a class="el" href="_i_iterator_8h_source.html">IIterator.h</a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Generated on Thu May 31 2012 16:19:52 for QSculpt by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.5.1
</small></address>

</body>
</html>
